In der Tabelle sx_repository können Einträge hinterlegt werden, die in allen Abfragen zur Verfügung stehen, z.B. kann dort ein SQL hinterlegt werden, der bestimmt, wie sich ein Professor in SVA definiert (z.B. bvl=30000 and dienstbez like "Prof"). Die Tabelle ist folgendermaßen aufgebaut:
tid |
serial |
|
1 |
id |
bpchar(200) |
Sollte mit der Modulbezeichnung anfangen und keine Leerzeichen enthalten |
SVA_Professor |
content |
text(-1) |
der Inhalt, der in den Abfragen eingesetzt werden soll |
bvl=30000 and dienstbez=?prof? |
caption |
bpchar(200) |
Bezeichnung, die ggfs. auch auf dem Bildschirm mit ausgegeben werden soll |
Professoren |
comment |
text(-1) |
|
|
version |
int2 |
|
|
art |
bpchar(200) |
|
|
sachgebiete_id |
int4 |
|
|
sort1 |
int4 |
|
|
sort2 |
int4 |
|
|
sort3 |
int4 |
|
|
gueltig_seit |
|
|
|
gueltig_bis |
|
|
|
Die Repository wird im Applet bei der Anmeldung mit übermittelt, im XML-Frontend wird es gecacht.
(Wenn Änderungen gemacht werden, muss einmal im SuperXManager der Server-Cache aktualisiert werden).
In den Abfragen kann man die Repository Einträge z.B. folgendermaßen verwenden
insert into tmp_erg (bezeichnung, wert)
select "Professoren?, sum(value) from xxx where ${SVA_Professor}
anstatt den Beschreibungstext fest anzugeben, kann man auch die caption des Eintrags benutzen.
select "${SVA_Professor.caption}?, sum(value) from xxx where ${SVA_Professor}
Wenn es nur einen Eintrag für eine ID gibt, reicht die beschriebene Vorgehensweise. Falls es aber für eine ID mehrere Einträge mit unterschiedlichen Gültigkeitszeiträumen gibt, schreibt man z.B.
select "Sachmittel?, sum(value) from xxx where ${FIN_Sachmittel("1.1.<<Rechnungsjahr>>?)}
dann wird der erste gefundene FIN_Sachmittel Eintrag ausgegeben, der zum angegebenen Datum gültig ist. Dabei kann bei Bedarf auch wieder auf einzelne Attribute zugegriffen werden, also z.B.
select "${FIN_Sachmittel("1.1.<<Rechnungsjahr>>?)}.caption?, sum(value) from xxx where ${FIN_Sachmittel("1.1.<<Rechnungsjahr>>?)}
![]() |
![]() ![]() |
Seite 39 / 102 Letzter Update: 17.06.2008 Impressum |